import Vue from 'vue';
import Vuex from 'vuex';
// import { stat } from 'fs/promises';

Vue.use(Vuex);

const state = {
    user: {
        uid: null, // 用户id(密文)
        level: null, // 用户身份， 10普通用户， 20分销商 30黄金会员
        avatar: null, // 头像
        nickname: null, // 昵称
        sex: null,
        birthday: null,
        mobile: null,//用户手机号
        is_paypassword: null, // 是否设置了支付密码， 0未设置， 1设置了
        area_id: null
    },
    dataLoading: true,
}

const mutations = {
    updateUser(state, obj) {
        state.uid = obj.uid, // 用户id(密文)
        state.level = obj.level, // 用户身份， 10普通用户， 20分销商 30黄金会员
        state.avatar = obj.avatar, // 头像
        state.nickname = obj.nickname, // 昵称
        state.sex = obj.sex,
        state.birthday = obj.birthday,
        state.mobile = obj.mobile,//用户手机号
        state.is_paypassword = obj.is_paypassword, // 是否设置了支付密码， 0未设置， 1设置了
        state.area_id = obj.area_id
    },
    changeLoadFinish(state, bool) {
        state.dataLoading = bool
    }
}

const  actions = {
    updateUser(context, obj) {
        context.commit('updateUser', obj)
    },
    changeLoadFinish(context, bool) {
        if (!!bool) {
            context.commit('changeLoadFinish', true);
        }
        if (!bool) {
            context.commit('changeLoadFinish', false);
        }
    }
}

export default new Vuex.Store({
    state,
    mutations,
    actions
})